1. Field of the Invention
This invention generally relates to communication systems. In particular, an exemplary aspect of this invention relates to impulse noise protection adaptation. Another exemplary aspect of this invention relates to impulse noise length and period determination and use thereof for impulse noise protection adaptation.
2. Description of Related Art
Communications systems often operate in environments that produce impulse noise. Impulse noise is a short-term burst of noise that is higher than the normal noise that typically exists in a communication channel. For example, DSL systems operate on telephone lines and experience impulse noise from many external sources including telephones, AM radio, HAM radio, other DSL services on the same line or in the same bundle, other equipment in the home, etc. It is standard practice for communications systems to use interleaving in combination with Forward Error Correction (FEC) to correct the errors caused by impulse noise. Standard initialization procedures in ADSL and VDSL systems are designed to optimize performance (data rate/reach) in the presence “stationary” crosstalk or noise. Impulse noise protection is handled with interleaving and FEC, but the current xDSL procedure at least does not provide specific states to enable training for the selection of the appropriate interleaving and FEC parameters.
An exemplary problem associated with traditional communication systems is that they use traditional Signal to Noise Ratio (SNR) measurement techniques to determine the SNR of the channel. These traditional techniques assume that the noise is stationary and does not contain non-stationary components such as impulse noise. The most common method for measuring the SNR is to calculate the mean-square error of the received signal based on a known transmitted signal, which is described in the ADSL series of ITU G.992.x standards and the VDSL series of ITU G.993.x standards, which are incorporated herein by reference in their entirety. These traditional methods for measuring SNR do not correctly measure the impact of impulse noise and do not have the noise capability to determine how the system should be configured to handle impulse noise.
There has been proposed that there is a need in ADSL and VDSL systems to provide robust error-free performance in the presence of high, real-world impulse noise. A specific proposal recommends that the standard impulse noise protection (INP) values are extended to values of 4, 8, 16 and 32 in order to handle high levels of impulse noise. Impulse noise protection is defined in the ADSL2 Standard G.992.3, which is incorporated herein by reference in its entirety, as the number of impulse noise corrupted DMT symbols that can be corrected by the FEC and interleaving configuration. Specifically, G.992.3 defines the following variables:INP=1/2*(S*D)*R/N S=8*N/L Latency (or delay)=S*D/4Line Rate (in kbps)=L*4where N is the codeword size in bytes, R is the number of parity (or redundancy) bytes in a codeword, D is the interleaver depth in number of codewords, and L is the number of bits in a DMT symbol.
If K is the number of information bytes in a codeword then:N=K+R and the user data rate is approximately equal to:L*4*K/N.
In general, DSL systems (such as the one defined in ADSL G.992.x or VDSL G.993.x) use the FEC and Interleaving Parameters (FIP) characterized by the set of parameters (N, K, R, D). Using these parameters, the Burst Error Correction Capability (BECC) in bytes can be simply calculated as:BECC=D*R/2 byteswhere BECC is defined as the number of consecutive byte errors that can be corrected by the receiver. Note that if the receiver uses more intelligent decoding schemes, such as erasure detection, it is possible to correct even more than D*R/2 bytes. It also follows from above that INP=BECC/L.
The proposal further recommends that the higher INP values are achieved by increasing the amount of FEC redundancy while keeping the same system latency and the same interleaver memory at the expense of user data rate or excess margin. Since, on phone lines without excess margin, there is clearly a trade-off between high impulse noise protection values and user data rate, it would be advantageous to try to maximize the user data rate by finding the minimum impulse noise protection value that can provide adequate impulse noise protection. The current technique includes the steps of an operator, or service provider, configuring the ADSL connection with a specific noise protection value, the ADSL connection is initialized and the transceivers enter into steady state data transmission (i.e., Showtime), and if the connection is stable, i.e., error-free, then the service is acceptable and the process ends. If there are bit errors, then the process is repeated with the operator, or service provider, configuring the ADSL connection with another specific INP value.
One exemplary problem with this approach is that it is time consuming and can result in sub-optimum user rates. This is illustrated with reference to the following examples:
Example 1: Assume that for a particular DSL connection there is high impulse noise and the required INP is 8. As a result, if the service provider uses a first INP configuration of 2, the DSL connection will not be error free. Therefore, the service provider needs to configure a higher INP value and reinitialize the connection. If a value of 4 is used as a second INP value, it still will not provide adequate impulse noise protection and bit errors will occur. Again, the service provider will need to configure a higher INP value until the correct value of 8 is configured. Clearly, the connection needs to be re-initialized every time there is a new INP configuration chosen and this trial and error technique proves to be very time consuming
Example 2: Assume that for a particular DSL connection there is high-impulse noise and the required INP is 4. As a result, if the service provider uses a first INP configuration of 2, the connection will not be error free. Therefore, the service provider needs to configure a higher INP value and reinitialize the connection. In order to save time and not go through the number of initializations has occurred in Example 1, the service provider simply configures the system to the maximum INP value of 32. Obviously, there will be no bit errors with INP=32 since this connection needs only an INP value of 4. As a result, user data throughput is greatly degraded since the additional FEC redundancy will be three times higher than what is actually needed. For example, if the INP of 4 requires 10 percent FEC redundancy, an INP of 32 requires 40 percent FEC redundancy which results in a 30 percent decrease in user data rate.